﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DefCore.Structures
{
    /// <summary>
    /// The Type of structure
    /// </summary>
    public enum StructureType {
        Core = 1,
        Passive = 2,
        Active = 3,
    }
    
    /// <summary>
    /// The type of frame a blueprint can be inserted into.
    /// </summary>
    public enum BlueprintFrameType  {
        FULLFRAME = 1,
        SEMIFRAME = 2,
    }

    /// <summary>
    /// The type of frames a cell can support, note: Multiple types supported
    /// </summary>
    [Flags]
    public enum CellFrameType
    {
        FULLFRAME = 1,
        SEMIFRAME = 2,
    }

    /// <summary>
    /// Indicates which frame the Blueprints are allowed to be placed in.
    /// </summary>
    [Flags]
    public enum BlueprintFrameAllowance {
        CENTERFRAME = 1,
        WALLFRAMES = 2, 
        FULLFRAME = 4,  
        ALLSEMIFRAME = 3,
    }

    /// <summary>
    /// Represents a Structure Frame (Multiple values supported)
    /// </summary>
    [Flags]
    public enum StructureFrameEnum {
        NORTHFRAME = 1,        
        SOUTHFRAME = 2,
        EASTFRAME = 4,
        WESTFRAME = 8,
        CENTERFRAME = 16,
        FULLFRAME = 32,   

        WALL_FRAMES = 15,
        ALL_SEMI_FRAME = 31,
    } 
}
